﻿#define  _CRT_SECURE_NO_WARNINGS
#include "random.h"

void game()
{
	//设置种子不写在game函数里面，因为game函数在do-while循环里面
	//如果1s内多次调用game函数则种子不变，生成的随机数一样，且多次设置重复多余浪费
	int r = rand() % 100 + 1;	//随机数的范围设置为1~100
	 
	int guess = 0;		
	int count = 5;		
	while (count)
	{
		printf("你还有%d次机会\n", count);
		printf("请猜数字>:");
		scanf("%d", &guess);
		if (guess < r)
		{
			printf("猜小了\n");
		}
		else if (guess > r)
		{
			printf("猜大了\n");
		}
		else
		{
			printf("恭喜你，猜对了\n");
			break;
		}
		count--;
	}
	if (count == 0)
	{
		printf("你失败了，正确数是:%d\n", r);
	}
}

//游戏菜单
void menu()
{
	printf("***********************\n");
	printf("******* 1. play *******\n");
	printf("******* 0. exit *******\n");
	printf("***********************\n");
}

int main()
{
	//设置一次时间为种子就够了，即种子一直随时间变化，调用rand函数则生成随机数
	srand((unsigned int)time(NULL));	//***生成随机数

	int option = 0;
	do
	{
		menu();
		printf("请选择:>");
		scanf("%d", &option);
		switch (option)
		{
		case 1:
			game();
			break;
		case 0:
			printf("游戏结束\n");
			break;
		default:
			printf("选择错误，重新选择\n");
			break;
		}
	} while (option);
	return 0;
}